package fr.afcepf.ai89.lagrandebouffe.data;

import java.util.List;

import fr.afcepf.ai89.lagrandebouffe.entity.Plat;

/**
 * @author stagiaire
 * méthodes utilisées par l'application pour accéder aux données du {@link Plat}.
 */
public interface IDataPlat {
    /**
     * méthode qui permet d'ajouter un {@link Plat} dans la base de données.
     * @param lePlat - {@link Plat} à ajouter.
     * @return la clé primaire du plat si le {@link Plat} est bien ajouté sinon null.
     */
    Integer ajouterPlatBDD(Plat lePlat);
    /**
     * méthode qui permet de renseigner qu'un {@link Plat} a été mangé dans la base de données.
     * @param lePlat - {@link Plat} à manger.
     * @return true si le {@link Plat} est bien mangé sinon false.
     */
    boolean mangerPlatBDD(Plat lePlat);
    /**
     * méthode qui permet de rechercher un {@link Plat} dans la base de données.
     * @param unLibelle - libellé du {@link Plat} à chercher.
     * @return une liste de {@link Plat} correspondant au libellé renseigné sinon une liste vide.
     */
    List<Plat> rechercherPlatBDD(String unLibelle);
}
